sqw: sqw.o tbparameters.o superlattice.o berry.o hamiltonian.o
	$(CC) ${LINALG} ${LIB} \
	tbparameters.o hamiltonian.o \
	superlattice.o berry.o \
	sqw.o -o sqw

sl: sl.o tbparameters.o superlattice.o berry.o hamiltonian.o
	$(CC) ${LINALG} ${LIB} \
	tbparameters.o hamiltonian.o \
	superlattice.o berry.o \
	sl.o -o sl

bulk: bulk.o tbparameters.o hamiltonian.o superlattice.o berry.o
	$(CC) ${LINALG} ${LIB} \
	tbparameters.o hamiltonian.o superlattice.o berry.o bulk.o -o bulk

bulk.o: ${bandcode}/bulk.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/bulk.cpp

sl.o: ${bandcode}/sl.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/sl.cpp

sqw.o: ${bandcode}/sqw.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/sqw.cpp

iobandstructure.o: ${bandcode}/iobandstructure.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/iobandstructure.cpp

tbparameters.o: ${bandcode}/tbparameters.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/tbparameters.cpp

superlattice.o: ${bandcode}/superlattice.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/superlattice.cpp

hamiltonian.o: ${bandcode}/hamiltonian.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/hamiltonian.cpp

opticalinjection.o: ${bandcode}/opticalinjection.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/opticalinjection.cpp

berry.o: ${bandcode}/berry.cpp
	$(CC) -I${INCLUDE} -c ${bandcode}/berry.cpp


